1. Field of the Invention
The present invention relates to access to a Flash memory, and more particularly, to a method for performing host-directed operations, and to an associated memory device and a controller thereof.
2. Description of the Prior Art
As technologies of Flash memories progress in recent years, many kinds of portable memory devices (e.g. memory cards respectively complying with SD/MMC, CF, MS, and XD standards) or solid state drives (SSDs) equipped with Flash memories are widely implemented in various applications. Therefore, the control of access to Flash memories in these memory devices has become an important issue.
Taking NAND Flash memories as an example, they can mainly be divided into two types, i.e. Single Level Cell (SLC) Flash memories and Multiple Level Cell (MLC) Flash memories. Each transistor that is considered a memory cell in SLC Flash memories only has two charge levels that respectively represent a logical value 0 and a logical value 1. In addition, the storage capability of each transistor that is considered a memory cell in MLC Flash memories can be fully utilized. More specifically, the voltage for driving memory cells in the MLC Flash memories is typically higher than that in the SLC Flash memories, and different voltage levels can be applied to the memory cells in the MLC Flash memories in order to record information of at least two bits (e.g. binary values 00, 01, 11, or 10) in a transistor that is considered a memory cell. Theoretically, the storage density of the MLC Flash memories may reach twice the storage density of the SLC Flash memories, which is considered good news for NAND Flash memory manufacturers who encountered a bottleneck of NAND Flash technologies.
As MLC Flash memories are cheaper than SLC Flash memories, and are capable of providing higher capacity than SLC Flash memories while the space is limited, MLC Flash memories have been a main stream for implementation of most portable memory devices on the market. However, various problems of the MLC Flash memories have arisen due to their unstable characteristics. In order to ensure that the access control of a memory device over the Flash memory therein can comply with related standards, the controller of the Flash memory should have some handling mechanisms in order to properly handle its data access operations.
According to the related art, the memory device having the aforementioned handling mechanisms may still suffer from some deficiencies. In order to find out various kinds of possible issues under consideration, a Flash memory vendor typically designs one or more sets of special commands for being embedded in a program code within the memory device, in order to perform test operations on the Flash memory in the memory device when needed. In some situations, it may be improper for the Flash memory vendor to provide a memory controller vendor with the special commands due to some reasons. In addition, in some situations, the special commands may be very complicated and the overall amount of the special commands (i.e. the number of commands) may be very great, so it is typically required for the Flash memory vendor to communicate with the memory controller vendor multiple times with regard to each special command, and the additional communication loads may cost time and manpower (or labor power), causing the working efficiency of each of the Flash memory vendor and the memory controller vendor to be decreased. Therefore, a novel method is required for performing host-directed operations in order to provide a host device with direct control functionality over a Flash memory in a memory device during the Flash memory test of the Flash memory without need of altering the program code in the memory device.